OK, I'm sorry, Gordon, you just started, uh.
So today we are willing to start with the hooked.
And this is our day five, day five, so I would if I would start, uh.
The topics, number six, sending data from airplane next to other applications with workbooks.
So if you have questions, yes, I got questions of yesterday traffic and so.
Yes.
So yesterday I got a question from.
Let me share my screen.
Uh.
Is it hard to answer the question?
So this she said, our companies have online store on CWI, the online store.
So what happens now is whenever we got a new sales order, which is paid, then the details are added
to Google Sheets through Zappia.
What we want now is to add that data directly to ERP next when we have new sales order.
Pete.
New sales or can you assure me that this type of integration examples, so first of all, uh.
Isha, this year, your sales, anyone access and raising sales order or it should be registered.
It has a user name and password.
It has a user name and I mean its online store, like any online show, like Amazon.
Yes, like that.
So we go out the new order.
Yes.
Then that event trigger and saying that they should check on Boso.
Are you OK?
OK, good to see.
Initially LRP next, it has what we call customer customer portal so you can give access to customers
and they can get username and password to raise their sales order through the website.
Through the company website, so they have to raise Seed's order, then you can catch these sales order.
I'm giving you just design solution design overall and you can build on top of that your solution.
This is my my first approach, but Karani maybe can add another his point of view of this solution.
But I suggest to use this customer portal so customers will raise sales order and directly to will added
to your system.
No need for integration.
Just great username and password for the customer, you can add the workflow and make sure that is paid
or you should pay before raising sales order.
I don't know.
But anyhow, there is a standard or out of the books features for an ERP next without any integration.
This is my my first answer.
So, Karen, you have an attorney.
What is your point of view on this question?
OK, so apparently Aisha and her company are selling using this site going down sequinned and now you're
sitting there and you want to the other did that to happen next when there's a new sales order.
So when a new system is bid, you want the data to go to your business, right?
Yes.
So what you need to do is to do a web hook, mummy.
I already looked at the documentation for for equines.
Let me send you the link we had, because your screen is already shared equally and hoping that.
Oh, this is the Acquited, it's a generic website, or it is your website, Iesha, it is a generic
website.
OK, I got Yes, Kiran, yes.
So you see a going have of the web hooks.
And if you scroll down, you see that they have a very good documentation.
So it's it's actually very, very easy to send to send in data from from April to early next week.
So what we're going to be doing today is sending data from because we are working with ERP next.
So we are going to create a Web hook instead of ERP next.
And we are going to send that data to our application.
I've already done a small dango up.
Well, we are going to be sending and receiving our data to us as I do that, I will be showing you
how to create a web, who knows how to receive the data.
We'll do what we need to do is now to create to do the same.
On a Q&A website, you create our own young, you create a Web coupon.
They are on their end, and then you receive that data on your next instance and then you'll be able
to do anything with that data.
OK, so so we are.
So if you don't mind, we can you can you maybe you can ask questions after we have explored and seen
what we however so offered
money.
Yes.
Go ahead.
OK, go ahead.
Let me share my screen.
Let me know, and I guess I'm also so, um.
Website really is a way of sending data is that we left at the place where we needed to clarify the
difference between between a book and an API.
And even before I go into explaining this, let me first of all show you what I have.
Then if maybe you need more clarification, I would be happy to to provide more more answers to the
difference.
So on Europea next, if you go to the Osam by and look for Web Hook, you'll see we have Booklist.
So actually able to add more than one one word book on Europea next to the new Web hook.
Here you are going to going to click on this button.
That is the address book and then the series.
You can just direct this one if you have other.
You have created a different series you can select.
And then the event here we have dog events.
So you are able to select to trigger an event after an insert update submit and all these others and
then here are going to provide the document.
So, for instance, we can sit here for our kids and then you need to make sure that this button is
checked always, if you do not want to use your Web immediately, you can just take this button.
So make sure that one is checked for it to be active and you have conditions.
So, yeah, be next to actually able to declare these conditions.
These are examples that they have given to you, like, for instance, when documented or Toto is greater
than 40000.
That is when I want to trigger these this web hook.
If you don't have any conditions, you just want this thing to trigger after everything that you just
leave it blank.
And then this is very critical.
This is the you are air, which is going to receive your book.
And this this can be anything.
It can be.
Are you worried that this outside of your system, for instance, today said we are going to be using
sort of excuse me.
Today, we are going to be using a jungle application, so we are going to be posting our usual to our
jungle up here.
And then the European experience, you two types of data that you can send, you can lead send this
in form, you are included or you can send digital, you can select which one to send to them.
I have worked extensively on form.
You are encoded because it works almost all the time.
If you're not comfortable with that, you can select Jason.
And then Jason is going to allow you to put ideas on object here if you want to form the audio form
is going to do is to give you this and you're able to select.
We are coming there.
The next thing is security.
If you need maybe to enable security in your airports here, you are able to provide of.
Yet if you're not interested in that, you can leave it blank, then they head us.
If you have more than one head, like, you know, you have authorization talking.
What, what?
All those days we can add them here for this to do.
You are just going to leave this one.
And then this is where you where you put the data that you want to send to your book.
So here, if you check here, you will see that what we have here is ideally all the fields that are
on our doctor, the doctor that we selected.
So here we have name, article, name, all the.
ISBN and all these, if you select a different doctor, you officials are going to be different here,
so you're going to have fields that are present on your DOCTYPE and that's it.
You set it up like that.
So here I have already I had already created one.
We can go through it in its own library article.
Article in its own update, so I want every time I put it my document, I want to trigger the book.
I don't have conditions.
This one is ending to my jungle up.
So I'm going to show you what I have done on this up here.
Then this one is you are included.
And this one I left with a default.
And then here I have added a number of fields, so I have to name the article.
The name is the primary key.
We have the article name or the ISBN total.
All this if you are the Novarro, you see the same tape that you had.
So I just selected.
You can actually decide to select the description and then we save it.
And now let's see what we have on my Django application here.
Not that not there.
Let me put it in.
So.
So what I have here, I just did a very simple jungle up, I installed I installed one application,
you get data and then on its views, I have I have a number of things.
One, first of I have imported Cirrus SRF exempt.
This is how to tell my application to ignore or to exempt this part from SRF.
And then I have a request here.
And then I have important, Jason, just to make sure that I'm able to access my data and then is accessing
this data is as simple as this request.
So this request would also get me the data that will arrive on this method through a post method.
So it's I'm going I'm getting that and storing it at data dict and then I'm looping through them and
getting each item.
So if we if we go ahead and run our application now here I'm printing like something like the dictionary
is and then I'm printing this dictionary here.
So just on those roads, item, item is this item here.
So if, for instance, I if I come into this out.
Let me show you what we have.
When I print a print, I print this.
If I do this and then, of course, now I have added that you are so that you are in that they have
yes, that is data.
And if we go to that, you are ill.
Let me go here and make sure my jungle up is running.
First of all, it has to be running.
So it's on bills and what is there?
Yeah, we have on jungle to see the jungle and see the books, and I think I can do python money to
do it.
I.
Transavia.
And my subways running and you can see it is running on put on 40000, so if I click this link, I know
it's going to tell us that they think it's not available because I have not said anything to run on
that.
But if you look at my code here, you see I don't have anything running on a thousand, so I need to
provide the data because this is what has my my path.
And if I add here data, you see this one is returning from Europe next.
I guess just a string.
I have I did hear this response.
I've written this response from Europe.
So it's getting here.
So what do you want to see is if we go to Europe next now and send and update our article.
Is it going to send the death of that article to this application it was supposed to see now because
they have issued a print statement here and I'm printing this data.
So when we come here, we are supposed to see that our data logging in here.
So let's go back here and and go to our articles, make sure this one is.
Now, just open a new a new tab in the library.
And Yagan just tweeted this one, I change something like I remove an idea sent and then I come back
here and you can see here we have aquarist look at the whole of this area.
This is a jungle.
Remember, this is a completely different application.
We have it with the name Think and Grow Rich article name.
Is that all those Jofre, Karenni and note that is removed here because that is what we sent ISBN and
everything else is there.
These are this is the data that we passed here.
Remember when we are putting here.
So let's check whether we have a description.
Go back here and our description here.
You can see our description is now because we do not have a description on this particular this particular
book.
So if I return my eye here and I add a description like this is this description and then let me just
clear this so that you can see the new one around Sarva and then we do an update here.
We are supposed to see the data here.
Just look at this.
Here we have it.
All this, this is what has been written.
Notice that it is inside a query dictionary and this is the description that we just added on up next.
This is of this description.
So the reason why I passed, I can remove this now and the reason why I had done this and actually know
that I need to remove this.
The reason why I was looking here is so that I can remove, I can remove, I can remove this go up to
where our dump was.
You see here we have you have we have aquarist it.
So I want to remove it from my body.
Said that I wanted just to be a decent data so that it is accessible in other applications.
What I can do is on my up here just loop through them.
So if no I go ahead and print this statement, this is and then I print what is here.
So this is just on just one of the routes item.
What I'm supposed to see Kriya.
Is clean diesel better?
So now let me go back to my article on this one and then edit something here.
I can I can I can just add a there and then see if it goes back here.
Seems like we have a much starting out.
Yeah.
That that must be something to get into indentation.
No, this is Python, so I can undo here just to make sure you let me leave it here and then I go back
here around.
It's over.
It's running.
And then I remove this piece civet and now.
Um, let me see what is happening here.
Call them one.
Jason, decoder ring starting out, OK, so what's happening here?
Let me first of all, print let me comment this out.
And and I can create just this, Jason, so ideally we already received our data.
But what I want us to do here is to make sure that the data we are receiving here is is is in decent
format.
So, yeah, that should be OK.
Let me just make sure it is OK here, don't ya?
That's OK, Aubagio, clear the screen, Ron resolver and a bit to move.
Sended.
And we still have an issue here.
So let me see what is causing this is a 500.
Let me check here, let me check my quote, print item, because I did request data.
So let's get into this and see whether we are getting here or print this request data.
Which are the subways running, save our update, our fire, we are getting there, so we have a set
with all the data.
We tried to remove this print and for item in item dictionary.
And do that.
And then print can decide that should not be an issue.
Then we can do that.
Return it, OK?
OK.
So run that.
I remove this and.
A contaminated stream.
Oh, OK.
OK, so we have a minute string somewhere here, I don't know, we're.
OK, for item in, uh, little, then, uh, get this.
It would look like the.
It equals this on the roads that I think that's OK.
Print, I don't mean.
So this is OK.
David.
We start our Iosava.
And then I see.
Rummenigge stream, what am I doing here?
Print this.
For item in item, additional karani, yes.
Uh, maybe Gaiam is raising his hand, maybe he has Yechiel.
Well, it just to see that we get the idea that maybe we don't have the jungle, but I had a question
regarding if that jungle app is down, will ERP next do some retry to reach the Web?
The Web hook or it's a single time and it's lost if a work is down.
So if they don't up is down.
What happens is that the application that you are providing, you are you are posting here like, for
instance, our jungle up here.
You are supposed to return our response to your book.
So you are up next.
Can handle that web hook and see.
But but it's not going to try to send it again.
It's just going to give maybe this is the message that that was not successful.
Yeah, that's that's that's really that's given.
OK, so we try this cannot really use to reliably sync data to another system because the system can
always be down for a couple of seconds.
We would lose that that request.
Right.
When you say it cannot be used reliably, I differ because remember that you can what you can do maybe
in your application, let's say, for instance, now this jungle up here, you can you can you can check
if if if maybe there is a request that is not successful, you can really try it after some time.
The alternative is on your Europea.
Next instance, you can maybe write a current job where all the messages or all the other books that
have not been successful can be retrieved after some time.
So I think that is that is something that you will need to do to do programmatically yourself.
OK, and where are those failed Web hook attempts?
I think we have our blog.
Let's confirm.
I can just do this web.
We have reports.
Uh, Slark report.
Disabled.
No, that's OK with who
apparently is grieving, have a similar brain, they don't even have a Web blog.
So unfortunately, unfortunately, I think this this one will have to be done from you, from your other
application.
De they de.
Yeah, they do.
They don't have our logo for
so we have new no way to know that the label failed.
Uh, well, on Web hooks always hooks you able to you are supposed to be able to return a response telling
it whether it was a success or not.
So, I mean, it's IRP next that is triggering the Web hook and the receiver is down.
So how do I know that your next triggered the web?
OK, but the receiver didn't response.
I don't think that is possible right now.
I have never done it myself, and I've never explored that.
This is why I say this.
It's not real reliable because you lose you may lose some, even though it is common practice.
Uh, Guion.
Well, common practice is to have a retry mechanism.
Yes, yes.
Yes, common.
Very common.
If you if you communicate to payment and failed, what will happen?
We don't know.
And, uh, how to trace that your system is running.
Correct.
But the other destination, the receiver is down.
We have to prove because the subject of a problem and Fites.
Someone who has said, OK, I did my job, the other one, and said, no, I didn't get anything from
you.
We got it.
So you start.
So how to prove from your side, from European text that you have triggered a correct way and you have
triggered the Web?
It's running, but your system is there.
Is down.
Keep down.
Uh, should I took notes about this game, maybe we can arrange it for you, so I took the Web log so
it failed or sexist.
We need to know in Europe next, what's happening, what is the result of this book?
OK, fine.
Uh, we'll get back to you, OK?
Thank you.
Yes.
Yes, yes, good, good.
OK, so we are going to check what is happening here, I dare say it is working.
I don't know.
I think that is a stream, but basically we have received our data.
Now, the difference that we were talking yesterday not is that that here here we have sent data so
print into this.
So this data is on a different application.
This application could even be hosting or not on a very different server.
In the case of the case of in the case of what is her name, Midhat.
You see, for instance, here we are sending data from this application equipment to Europe next.
So we are actually getting data from one application to another application.
But when you use an API, let's say, for instance, now you are building your application, you want
your ERP next to do currency conversion.
Like we had acquistion question yesterday.
You do not you do not need to to get data from from the website that was doing currency conversions
to your ERP next instance.
Or maybe if if now Methadone's wants to start using this ERP next to display also the data that is maybe
on another application that they are using to store the items you use an API, the API will just be
accessing the data from the database, which from the database of the application that has the items
and the displaying it on your other application, like, no, not this Europeanist.
So the data is sitting on a database that is made by another application, but you can see the same
data on an interface for ERP next.
That is an API.
If you are doing a Web hook like, you know, what is this data?
They all that this data is all this data was sent through a webpage that we have created here.
I think it is.
Yeah.
This one this workbook has sent this data from ERP next to another application.
That is Outside-in.
What is this was it was this Jungu application.
The data is sent.
So this does go up.
If we come to our up here, we can actually access this data here to see it into a database or do whatever
you want to do here so we can have this data saved into another application because we have access to
it here.
I don't know whether that that now difference is clear.
You are the one who didn't understand yesterday.
Yeah, sorry, I didn't get it, you actually Brooke Webb, who you have shown now is different from
IRP next to two external system, right?
Correct.
So here, if you the web, who will work, if you update a record of articles every day.
Yes.
And it will trigger it will trigger this will go.
So those conditions, these conditions there there is a book trigger condition.
The other one don't go with book trigger for this one.
Yeah.
This condition.
Now you are say for example, for a specific article.
Yes.
Will run like this.
For specific article, yeah, means if I have a specific article I have written, for instance, for
a foreign author or foreign status.
Let's say, for instance, one, the attack on this one here.
We want these three not only because you not win.
Oh, I'm editing.
Let me go back to two hours and date and I want this thing to win.
Remember, you can access all these fields by just seeing Doc Dot, OK?
This article costs.
So we want to say doctored article caused if this thing is greater than we can even leave it at forty
thousand.
Whatever you want to do here, not the only time you want this thing to trigger.
Pull this one.
Serialize the district, this one enemy.
Don't seem.
It is no article cost.
Maybe filename is wrong.
It's complete about Jason O.
OK, OK, OK, OK, doctored status, let's try doctor status.
Equals something like like we have two statuses for a document.
Available, yeah, available, it's available, hoping that it would be safe in the database.
Yes, we have an error here.
I don't know why we have an error.
OK, OK.
We can check it out later.
But ideally, these conditions, if you want to add more items like I want this thing to trigger only
when the toto is more than 40000 or when the status of the documents changes to available.
I want you to trigger this this this workbook and send out some data.
Those are the conditions that you are here.
Yes.
Now now you are running.
The workbook is running.
Yes.
This is what is doing Wambugu.
Now, what will do this workbook.
What it will do.
Yeah.
So this web hook will on on every update where everything we update data we have to date sent this data
to this.
You are ill, you see this is our job application is running on localhost but it goes on and then we
have our last data.
This is the receiver receiver now.
Yes, correct.
Yeah, this is the receiver.
So this is the application.
This is where we are sending it.
OK, yeah.
So the application like enough for instance, in the case of Midhat, when they log into this app,
is it this one, they will find a place where they have web hooks.
So when you are going to do let's say, for instance, you want I was trying to have one on one here
receive post data.
I wanted to do one to receive the data from my python, just a python file.
So I am already working on that one here.
So this up.
This up, this is receive post data embossing in keyword arguments.
And there you are.
All of this application is what I have here with posthuman is this one.
So on the.
On the.
On the Queen website, where they will be asking you to provide the request you are ill, you will paste
this Warrell this one in my case, I'll post this one at the next instance.
And you access remember the dotted path to you, your your function, your function here.
And then whatever you do here will be executed every day.
That is, they need to store in something, I think a payment invoice or something like that.
Every time it is it has been paid.
So she will write radiologic like to create a new invoice and inserted into the database every time
on this site.
On this side, a payment invoice has been a payment has been done.
Mummie.
Sorry.
No, no, you you did the hook from from our side, from AARP next, right.
Sorry, you you you create.
So let's take the case of Midhat Asia now, she will create a Web hook in IRP next and she will not
be next here on Equant.
Only one.
She will create a web web hook on this documentation here, OK, this documentation then where they
will they must ask for the you are areas you want to send data.
Put the link to the function where you want where you are doing.
You are handling that data.
And that link will be the link to Europe in next instance.
The method you have written on Europe in next instance, still currently when one second.
Let's go step by step.
Now, now she will go to equate and create a book there.
Yes.
And.
It does does they allow to create a book or it is available in this website?
They work, they have done, you see now, for instance, on Europeanist, they have this page that
we have this page.
This is where you create all your books, right?
This is here next to ebooks.
Yes.
Now, the same will be available when she logs into the account on Equant.
OK.
They will have a place where you can create web hooks.
OK, so on her Web, she will point out, Brooke, to Europe next.
OK, OK, so in ERP next, still we are not we are Sharra, we are far from the so inadequate it will
tell the agreed to put data where to put it in the next.
We to put what data?
Yeah, data from equipped and equipped, when you create the book in in somewhere, you will tell a
kid to send data to IRP next, right?
Correct.
So in ERP next now to this year where it will be received, this data.
This is what I was seeing.
You see the you see the the app you are in here.
Yes.
This is our instance.
This is our our Europeanist instance, the one that is running locally.
Yes.
And of course, we have the European external API method.
And then here we have adopted part of our function about how you used to do this.
Yes, yes.
So now this function receive post data, I have put it on utils file.
So when Tom here is Mathilde's, I have put our function here, I am calling get receive the data.
OK, then you pass in key documents here, because this is going to contain a lot of data, so just
access it, ask you what arguments?
OK, then this data dictionary, will you accept this as floppy dot dict?
Then you passing the keyboard arguments then and I say this, this one will contain all your data,
just like it was appearing on our on our application on the console here.
OK, now, so now I've still got on it now you have to see that you have a dictionary, right?
Yes, a dictionary.
And you have to insert this dictionary data in, as this said, out as a censor, that it should be
censored.
That added in your censor.
Right.
So now from data dictionary to transfer data to create physical record in the sales order DOCTYPE.
Yeah, so what is the next step now, suppose we have received the, uh, dictionary.
Wait one second.
Let me read something here and dissent.
You see what we are receiving on jungle.
You see this before it was clearly scripted like this, that one.
Yes, yes, now this is what you are going to receive on this function, this, this, this, this,
this one here.
OK, but remember that the content here will not be name, article, name.
It will be the content of your invoice.
Yes, yes.
Yes.
So now you can access you can access these keys from your data here in the inserted on the in the invoice
table inside of your next.
It's a sales alternative.
Yeah, so many sales are there, so that sales order you receive it's details like this, then what
I was trying to do here, remember, when you are sleeping a new not.
Yes, we didn't get dog years then the duct tape was we provided a note.
So, yes, he is going to provide their citizens or not that one.
And then he she is going to access that data one by one, one by one, one by one, and then just leave
it in the database.
But now things order.
It contained many items, so many lines.
You have to loop.
You have to loop you because you don't have to remember we had when you received this here is going
to come in this week.
Where is it?
Yeah, I had done this.
I don't know why this thing is letting us down now.
I had done this I had done this here.
And what they had here is this is not necessary, this item.
So I was accessing these items with this primary key like item item this the name, then the article
name like this, then this other one.
So now if I wanted to use this, for instance, if it was on up next like this one get case.
Yeah.
I get Doc then that incertitude correct.
Correct.
Yeah.
So yeah.
Yeah.
So I just take this one by one and put them down here.
Yes.
But you said so your this Bukola for.
For loop, for item in that addict, so automatically it will loop a loop all available records in your
dictionary, right?
Yes, it really is, yeah.
Mm.
Uh, a little bit, uh, clear.
A little bit clearer.
Clearer.
But it has a lot of work to do for you, Isha, to catch this or higher service providers to do it for
you.
OK, tell Karani to do it for you.
I hope it is a little bit clearer.
Yeah, yeah, yeah, we are trying to give you all the high level steps.
Let's go to the Chad Carney game.
He put a lot of message there.
We like we appreciate your messages beyond saying let's take the first message, Karen, I found the
info regarding the Web retry in trial.
What is it exactly, this retro?
This is the file that is Sandy that is triggering the Web hook, and within this file you can see it
is being tried three times, um, and and each try is being logged with happy Frappier logger.
But then after three, three errors, the exception is raised.
And I'm not sure then how where does this exception is being shown in the system.
So I don't know the the plan of the today's topic, but if you have some time, maybe you could try
to make the Django app down and just let it fail.
Three times to see if we see something and where that they would fail.
Yeah, I did some work, uh, in this.
Is this integration between system is most complicated subject.
It has many parameters and here it give a hint like it is, it keeps it trying three times by default,
like three times.
But how how long the frequency between first timer and second time, maybe after direct will be dry
or after.
Sometimes there's a sleep in there that is a little bit longer on each try.
If you're looking at the source code, ok, either six is or so if you complete it by what is the status,
complete error or sixes you can get.
Suppose I I'm I saw some other API integration like Oracle.
So if it is success or failure, you get information about your code.
But here I am not sure how it's working.
Karenni do you know the frappé that no matter where does this.
Text goes the system.
Do we have a front hand to front and screen to Cedar Rapids or to local logs, logs that into the two
sound files?
OK, yeah, it be to put that into a file somewhere.
We can we can try to check and see logs.
Yeah, this is where the logs.
Where this what you see on your instance?
Yeah, I'm OK with that, but the witch is saying miniluxe their trouble.
OK, I can see one here for Rapallo.
Let's see.
But normally you are not using the slugs.
This is really, really I don't use I have never used them personally.
And you can see by groundworks
background in here.
Yeah.
Also from the front end, I look for background.
Oh, yeah.
Your.
Well, can can you see this?
Yeah.
In Webcke field.
You know.
Yeah, so we have it here, its logging, its logging, old asphalt.
OK, yeah, yeah.
So they're here.
OK, ok.
OK.
Thank you.
Thank you so much.
So you can use this log in your code.
Now, when I don't know when you when you know that this one feels, then what?
I don't know, because you keep it dry or you write, you send email or alert someone, because this
integration, you keep running back and whether the end user will know if it is manually.
Suppose you update the article as you did and you get error messages successful or there is a problem.
OnTime.
Stenning, the user that your transaction completed successfully.
You've got what I mean in front end to the end user press update.
He presses right here.
Yeah, here in the library.
Yeah, good.
The duct tape, the duct tape library article, library duct tape also.
Yeah.
Here, his hair, for example.
You update the author.
OK, yes.
You update any field.
Yeah.
And OK.
And impressive.
Yes.
Yeah.
Here if there is a problem of Westbrooke it should do the end user.
End user will take action the contact administrator or contact the developer or contact whatever.
So telling them there is the problem of integration on time that may not be actually not, not welcome.
I stand corrected if I'm wrong because you see the things that Jim has posted here.
This one is creating it's doing very retries.
So you don't expect that the user will be here waiting for the system to do three retries and then allotted
them?
Yeah, different.
It is different.
Option three retries.
It's an option three retries.
If there is an error, it will not go silent.
You got that, I mean, it will not go silent like I did the payment last time I did the payment for
a bill for for a water invoice here in my place.
The transaction is being successfully completed, no error, no problem, after two months comes to
my home to cut the water.
What happened?
They said you didn't pay.
I have paid.
I tell them I have paid.
I show them prove that they have pay, but they said, no, our system didn't get payment.
In this case, there is two systems, one for the payment and one for the water company.
So water company didn't hear about my payment, so my payments stay stuck in the payment system only.
You got it.
Yeah, so we if a message come to me that the payment failed, so I will.
I will.
No.
This is the point here.
Why, why, why we should show it to the end user.
It's very important.
OK, so let's take a note about the.
How to use, how to use, how to what you say, how to alert.
And you said about what in my case, it would not be the end user, it would be an administrator that
would allow other issues when not on each retry error, but when the three retries fail, then at that
at that point, it needs to be alerted to the administrator to take manual action.
Right.
So, Administrator, how do you come to know by email or SMS?
Yeah.
What you're missing, what you're missing is very, very important.
Yeah, but your case is not practical.
Oh, because remember, this is a backgrounder job and remember, they also retrace, so I and you,
they will come here and receive an article and then move move to another one.
They remember that during that time when she's the user saved, this could have failed.
Then she moved or he moved to another article, indeed another one in the field.
But the system is holding them as batrouney jobs and trying to try to send them to a hook.
So there is no way we can rule out an end user here, but after the very retries have failed, now we
can maybe send an email to do an admin or to whoever we may choose and tell them that now there is an
issue with which maybe you are X, Y, Z application.
It's not on.
It is not running.
It I agree with you can be a different concept, different design.
It's a different design.
Depends on the design.
So if you have someone to monitor this failure, it's OK.
You can do it to a system administrator and you will receive email or he will open file or I don't know.
Actually, the administrator will receive that same job, email or notification system, whatever,
in the background job screen.
Yeah, yeah, because we really believe that we are using labor the very same.
Vanderberg, the background geography's.
So you can also see in that log there's also Adelong in the next can see.
Can you can you open it up?
Look.
Catalog there is DOCTYPE colored analog.
In front end.
The other analog era, yes.
So OK, yeah, this one here.
I failed one.
A.
Gonzales refused.
Yes, he.
So we received these Adelong notification of things.
But you your right now.
No, I think on systems or on administrator and they will send notification balafon.
OK.
Oh, look, Karen, it's trial and error error settings.
I think there's some things there that you can the DOCTYPE error setting
error settings yet in the search bar, the.
Do you see that other sitting?
No, you don't have this one warlock sitting belongs that looks at it, you know, and here you are
to notify.
So is this must be like this?
Yes, yes, yes, yes, yes.
Wonder.
OK, so here if you enable this, you won't get any error happen by email, right.
Yes, yes, I think so.
You see there they are thinking in an e-mail here.
Let me try to do another filter.
The.
OK, this is where I'll get an email.
But again and again, Kanani for and use it if you save and you show him successful.
OK.
And he leaves and he goes to work for other tasks.
For him, it's done.
Yes, uh, next administrator will find a problem.
Mm hmm.
It is an error.
OK, yes.
Yes.
What he will do, administrator, he don't know the business.
They don't know the impact.
He not only there is a problem, the transaction failed.
Right.
Mm hmm.
So he should go to the user and tell him your transaction failed.
Can you repeat it or redo it?
I differ.
I differ me.
Because remember, let's say, for instance, in your case, your example of the water bill where you
paid.
Yes.
This assuming you have you are using this system.
Yes.
The problem was not the US.
The problem is not mine is it's not my problem.
Yeah.
The problem was.
So there is no business telling you because you retry again unless if we are saying you repay the money
which you have already paid.
You know what happened for me, yeah, I paid twice.
Look at this mummy here, this this user here who is editing this article.
Yes, no, let's use the midhat example.
They want it when I use a piece for something, Europeanists would receive that payment right here.
Now, how user has come to this thing and they have purchased something from their store and they have
made a payment.
But for some reason, they aside, maybe they are Sarbaz down in the next is not running this user.
You can't tell this user to stick there and wait for you to restart your server.
What you are supposed to do is finish with the user then maybe from the code.
Now, when you are administrator, because again, remember it, is this the other side of the hook
that has failed?
Like now in their case, it is this next instance that will not be running, and therefore they are
the people who should be told that your system is not running.
You need to restart it.
And there is maybe one fail of the job that you need to maybe take on a button to retry or you can take
that didn't install it manually or into a database.
Yes, I got you.
Now, it becomes like a technical problem.
Communication or connection or problem is technical.
It is technical.
Yes.
It does not have has nothing to do with the user.
Yeah, they are two systems that are communicating in one of them is not talking to the other.
Yes, correct.
You are right.
I agree that, yes, for End-user he did the transaction and saved the complete and then he went back
to her, correct?
Correct.
Now, if there is a problem between systems, it should be resolved and resubmit the transactions.
It should work.
Yeah, your idea, yeah.
Yes, yes, I got this.
OK, so we learned something new today, a little bit complicated, but it is it is it is a heavy decision
today.
Yeah, I didn't want that I didn't want to clear those doubts, you know.
Yeah.
So that people can now integration's with the Web hoax is very powerful, not only on Europe next,
but on any software.
Weblogs is one very big business.
So so everyone who is a developer needs to understand how books work.
So if you use payment integration with, for example, you be paid by MasterCard payment.
And this payment, is it worth brucke integration or it is API integration?
It highly depends.
We did one with an API.
But I tend to think also I don't know whether we can do the same with the with with with our book,
but we have done we have done one.
We done with an EPA.
With an.
Yes.
So in the case where you are collecting data for patient in the hospital and from machines like scanner,
like you are collecting data.
This is a through API or Worx.
Collecting data from in the hospital.
You are collecting a scanner, for example, image scanner for the patient.
He did scan.
Hmm.
So this data you collect using API or workbooks API.
On.
Yeah, and and for those those old ones which don't have an API, use an SDK.
OK, other than the next, I heard a lot, the term service.
Right.
You know, we're observers.
So what is the correct mapping Web servers?
Is it an API or.
It is a book.
It's an API.
OK, yeah.
OK, yes, so I think the points raised during the call clearly were book luck, a failure or success,
and how to alert End-user about success or failure is already clear, right, using the email log.
OK, thank you, Garani.
So let's see if any point is not clear or you have doubts.
Let us know before closing the call.
Uh, any questions about.
Is it clear?
Uh, Ken.
So, Muhammad Ali, you stay with us and we'll continue the historic problem of the.
Boubacar.
OK, I'm here.
OK, so for others, you are free.
Today's goal is finish.
Today's topic we finish with the workbook.
Uh, thank you very much for attending.
So we'll continue supporting Muhammad Ali Boubacar for installing his instance.
So we are free now.
You can sit or leave.
I know by now that I will join you to see what other special things.